import request from '@/utils/request'

export type Blog = {
  /**
     * 帖子id
     */
  id?: number | string,

  /**
   * 板块id
   */
  sectionId?: number;

  /**
   * 用户id
   */
 userId?: number,

  /**
   * 标题
   */
  title: string,

  /**
   * 文章内容
   */
  content: string;

  /**
   * 点赞数
   */
  likeCount?: number;

  /**
   * 评论数
   */
  comments?: number;

  /**
   * 创建时间
   */
  createTime?: number;

  /**
   * 修改时间
   */
 updateTime?: Date|string;

 user: object
}

/**
 * 
 * @param pageIndex 当前页
 * @param size 页大小
 * @param query 查询条件，标题
 * @returns 
 */
export const listBlog = (page: number, size: number, keyword?: string) => {
  return request({
    method: 'get',
    url: '/blog',
    params: {
      page,
      size,
      keyword
    }
  })
}

/**
 * 根据用户id查询Blog
 * @param id 用户id
 * @param page 分页页码
 * @param size 分页大小
 * @returns 
 */
export function listBlogByUser(id: string|number, page: any, size: any) {
  return request({
    method: 'get',
    url: '/blog/user/' + id,
    params: {
      page,
      size
    }
  })
}

/**
 * 添加
 * @returns 
 */
export const addBlog = (data: Blog) => {
  return request({
    method: 'post',
    url: '/blog',
    data
  })
}

/**
 * 删除
 * @returns 
 */
export const delBlog = (id: number|string) => {
  return request({
    method: 'delete',
    url: '/blog/' + id,
  })
}

/**
 * 修改
 * @returns 
 */
export const updateBlog = (data: Blog) => {
  return request({
    method: 'put',
    url: '/blog',
    data
  })
}

export const getBlog = (id: number|string) => {
  return request({
    method: 'get',
    url: '/blog/' + id,
  })
}

